-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] GMW share/open and XOR/AND bit operations #200
Conversation
…js to terminate client when compute() finishes
This looks really good so far. The next steps will be to write tests in demos/BMW_demo/test.js to reflect the functionality of the demo as it exists now (the tests will change when we implement AND/XOR). Something I did not mention before is that you can run This note has nothing to do with the functionality of the code, but we should make sure we standardize the naming of functions to be "GMW" instead of "BMW" to be consistent with the name of the authors of the paper we're basing this code on. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work! We won't merge to the base branch yet, we will keep that until we integrate the functionality into the library.
- accepts two shares as individual parameters instead of an array of shares - include standard error checking - remove unused/commented code Additionally, update GMW_Share to set the Zp = 2 for all secretShare objects it creates.
- in mpc.js, call gmw_xor with new parameters (input shares as separate params) - in mps.js share the input parameter and share with all parties - in the gmw_tests, test xor again for the inputs of parties 1 and 2 (still runs with party_count=3)
* Update README.md in various demos Co-authored-by: Takeharu-K <[email protected]>
I'm not sure why Math.random() was used in this setting, because it could leak entire shares here if not strongly pseudorandom.
Available as: jiff.protocols.gmw.bits.sadd jiff.protocols.gmw.bits.smult jiff.protocols.gmw.bits.compose
Here's some GMW changes I made in the summer. There was a race condition in the composition operation which I did not get around to debugging until today. I added a demo to show how it it possible to do multiple arithmetic operations using GWM and convert back to Shamir sharing without any explicit opens. I guess this means JIFF can officially be considered a hybrid secret sharing library! |
closing but keeping the branch around, since this is not in active dev |
just opening up a PR so it's easier to comment and leave feedback